import type { ApiPagination } from '#types/utils'

export interface OperationLogListParams {
    /**
     * 日志类型
     */
    logType?: number

    /**
     * 操作模块
     */
    title?: string

    /**
     * 操作人名称
     */
    operationName?: string
}

export interface OperationLogListItem {
    /**
     * 主键ID
     */
    id: number

    /**
     * 创建用户ID
     */
    createUser: number

    /**
     * 创建时间
     */
    createTime: string

    /**
     * 更新用户ID
     */
    updateUser: number

    /**
     * 更新时间
     */
    updateTime: null | string

    /**
     * 标记
     */
    mark: number

    /**
     * 标题
     */
    title: string

    /**
     * 日志类型
     */
    logType: number

    /**
     * 操作方法
     */
    operationMethod: string

    /**
     * 请求方法
     */
    requestMethod: string

    /**
     * 操作类型
     */
    operationType: number

    /**
     * 操作人名称
     */
    operationName: string

    /**
     * 操作的URL
     */
    operationUrl: string

    /**
     * 操作的IP地址
     */
    operationIp: string

    /**
     * 操作位置
     */
    operationLocation: null | string

    /**
     * 操作参数
     */
    operationParam: string

    /**
     * 操作返回的结果JSON
     */
    jsonResult: string

    /**
     * 操作状态
     */
    status: number

    /**
     * 备注
     */
    note: null | string
}

export type OperationLogListResult = ApiPagination<OperationLogListItem>
